from abc import ABC, abstractmethod

class DatabaseAdapter(ABC):
    @abstractmethod
    def connect(self, db_config: dict):
        pass

    @abstractmethod
    def execute_query(self, sql: str, params=None):
        pass

    @abstractmethod
    def fetch_data(self, sql: str, params=None):
        pass